Video graphics computer systems are well known, popular consumer products. A typical system includes a data processing unit that connects to an ordinary television set for displaying images of a game or other application. The data processing unit receives controlling software from a read only memory (ROM) that is usually packaged in the form of a cartridge. The cartridge is removably plugged into the data processing unit. At least one pointing device, such as a mouse, joystick, touchpad, touchscreen, switch pad, or light gun, is also connected to the data processing unit to allow the player to input positional information that is used by the controlling software to execute the application.
The data processing unit typically has a single central processing unit (CPU) and associated volatile and non-volatile memory, including all random access memory (RAM) and bootstrap read-only memory (boot ROM), a television (RF video) signal generator, and an input/output (I/O) processor to interface to the various pointing devices. These devices are in circuit communication. One distinguishing characteristic of these systems is the use of a motherboard or system planar to electrically connect these components together.
Touchpads are coordinate type pointing devices used to input coordinate type data to computer systems. The touchpad is typically a pressure-sensitive bounded plane capable of detecting localized pressure at its surface. When a user touches the surface with a finger, stylus, or the like, the touchpad determines the location being touched and reports via some type of generated signal to the attached computer system the coordinates of that location. In response, the computer performs the function, if any, associated with the location pressed.
Typically one or more regions of the touchpad are assigned to certain functions within the system or within application programs such as entering data or providing directional inputs. The user conventionally is made aware of what function is associated with which region by a template. A template is a sheet with a graphic design and is typically superimposed on the touchpad surface. The graphic design typically delineates or maps out regions of the touchpad surface and the regions are normally labeled to provide a reminder to the user as to which functions are associated with which of the various mapped out regions.
In typical touchpad systems, application programs receive coordinate location data signals from the touchpad. For example, when the touchpad communicates that the pad surface was touched fifteen columns over and twelve rows down, the application program must associate the coordinate location with the function mapped to that particular region. That is, the application program must decode the signal which indicates region of the graphic design was touched thereby determining the function associated with the touched location.
Relying on each application program to determine which region was touched leads to several problems. First, applications become hardware dependent. A particular application must "know" the resolution (the number of rows and columns), overall size, and data format of the touchpad being used, thereby leading to applications possibly being unable to perform with various types of touchpads. As technological advances increase the resolution of the touchpad, existing programs may not have the flexibility to adjust. Second, this requires application programmers to write into the application programs location decoding code. Thus, each application program must have its own region-determining routines, thereby leading to unneeded duplication of effort and possible inconsistencies and even errors in the way touchpad regions are supported.